Обсуждение участника:Arachnelis/Сусек

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
  • Друзья, помогите разрулить спор! Статья переменная типа. Спор чисто лингвистический - как перевести термин. О переменных типа разные источники говорят "type variable ranges over the set of all...". Буквально это переводится как "переменная варьируется над множеством всех...". Однако, слово "варьируется" неудобно для произнесения и вообще варваризм (а я их не люблю и стараюсь избегать по возможности). И я использовал другой вариант: многие русские источники о математических переменных говорят "переменная пробегает множество всех...". Во всех контекстах, кроме "type variables" с этим никогда не было никаких проблем. Но когда я использовал этот вариант в статье переменная типа, то участник Tucvbif встретил этот вариант в штыки (вот очень длинный спор с ним). Не подтвердив свою позицию ни единым (!) источником, он утверждает, что вариант "пробегает" здесь категорически не применим, ибо, по его мнению, это означает чисто императивный случай использования переменной с состоянием - когда множество чётко определено, конечно, дискретно, и переменная последовательно принимает все значения из него. Однако, переменные типа - это математические переменные (буквально, согласно АИ), они определяются над бесконечными множествами, при их компиляции используются не все возможные их значения, а сами значения принимаются не последовательным перебором, а просто независимыми инстансами. Он игнорирует, что "set of ALL..." вольно мелькает в самых разных контекстах. На основании своего субъективного мнения Tucvbif неотступно требует отказаться от варианта "пробегает", т.е. использовать варианты либо "варьируется", либо вообще "может принимать значения из..." (что крайне не удобно и не универсально - эту формулировку придётся хитро адаптировать под каждое предложение). Термин используется и в других статьях, хотя их он пока вроде не портил. Русских источников по ФП и параметрическому полиморфизму, как вы все знаете, раз-два-и-обчёлся, а те, что есть, пользуются лишь теми словами, что им потребовались по содержанию (например, у Пирса переменные типа вводятся под другим углом, и он на помощь таким образом не приходит). Мне не удалось ткнуть пальцем в какой-то Авторитетный Перевод Авторитетного Англоязычного Источника, который бы однозначно склонил чашу весов в его или мою сторону. Но мне небезразлично, чтобы подбираемые по ФП эквиваленты были столь же гибки в использовании, как и английские слова - а там бывают очень неожиданные повороты из-за гибкости самой парадигмы (вспомните хоть "future type module"). Задача: подобрать набор английских, русских и переводных источников, который бы доказывал допустимость моего перевода, подвести соответствующий итог в обсуждении статьи и вернуть определение в самой статье на место. Arachnelis (обс.) 00:44, 8 июня 2017 (UTC)[ответить]
  • Вообще-то это именно вы мыслите не просто «императивно», а на уровне ассемблера, судя по вашим попыткам приплести к функциональному программированию ячейки памяти. И вы, кстати, тоже не привели в поддержку своего мнения ни одного источника, точнее приводили, но совершенно ничего по теме. И слово «варьируется» здесь тоже не подходит, потому что варьироваться — означает движение.--Tucvbif???
    *
    12:18, 24 июня 2017 (UTC)[ответить]
  • Так я и прошу помочь в поиске источников. Требуется хотя бы один (больше - лучше) чисто математический источник (по любому разделу, но желательно из дискретки), отождествляющий перевод "range over" с "пробегает"; и слово "математика" однозначно срастит применимость этого источника к типовым переменным. Что же до чистоты ФП, то это очень распространённое заблуждение, посеянное одним-единственным сообществом - хаскельщиками (смею предполагать, что вы более-менее тесно знакомы только с ним) - что язык якобы только тогда имеет право называться "функциональным", когда он чище, чем яйца у кота. При этом хаскел сам же предоставляет нечистые возможности и, как метко заметил Харпер, делает их использование неизбежным - так что всё это при близком рассмотрении оказывается просто демагогией. На самом деле, SML - очень даже функциональный язык, прямо предоставляющий мутабельные ячейки, и для такого рода языков даже выделили специальный термин - impurely functional. Более того, цитирую Paulson'а: ФП является не "чистым декларативом", а лишь его подмножеством - это по-прежнему программирование: разработчик должен следить за показателями эффективности, т.е. объёма памяти и длительности исполнения. "ML for the working programmer" (очень уважаемая и обширно рекомендуемая книга), с.9-11 (The efficiency of functional programming). В сообществе Хаскела учат забывать о компиляции; MLщики никогда не забывают о проблеме эффективности, но это не значит, что это императив. Среди новых диалектов есть немало и чистых (Manticore, MLPolyR), и полу-чистых, т.е. явно выделяющих чисто функциональное подмножество, чтобы компилятор знал, где можно смело редуцировать, а где надо быть осторожным (1ML, да и модель аппликативных функторов OCaml'а близка к этому). При этом важно, что "чисто функциональное подмножество" есть далеко не у каждого языка (уберите присваивания из Си, и он вообще перестанет быть языком общего назначения). Так что Хаскельщики сеют ложные стереотипы не хуже С++ников, и с этими стереотипами надо бороться. Ну а про то, что "варьироваться — означает движение" даже спорить лень. Это всё равно что "диван - означает бездельничать". Arachnelis (обс.) 18:43, 28 июня 2017 (UTC)[ответить]
  • Тогда скажу на языке википедии: пока вы не дадите ссылку на некий лингвистический источник, который хотя бы косвенно и отдалённо намекал на "движение", эта фраза останется вашим субъективным мнением, вызывающим сомнение. Первый ход здесь за вами - без АИ с вашей стороны мне и утруждаться незачем. Arachnelis (обс.) 14:49, 8 июля 2017 (UTC)[ответить]
  • Впрочем, один контр-аргумент всё же кину. Слово "переменная" (англ. vari-able) означает, что значение может изменяться, а не что оно обязательно изменится. Представьте, что значение типизировано как мутабельное (в SML тип 'a ref, в Хаскеле монада IORef), но за все запуски программы ни при каких входных данных не изменяет своего значения, т.е. используется в роли константы. В результате имеем: субъективно это константа, но формально это переменная. Английский суффикс -able означает также именно возможность. На днях гляну в словообразовательный словарь латыни, будет вообще неубиенно. Arachnelis (обс.) 15:02, 8 июля 2017 (UTC)[ответить]
  • Вам стал мало играть правилами в основном пространстве, вы ко мне в сусек пришли за тем же? Вы самостоятельно, безо всяких на то оснований, провозгласили в общепринятых терминах некий скрытый смысл, которого в них отродясь не было, и считаете, что это у меня орисс, что я этот скрытый смысл отрицаю и понимаю их в наиболее общем смысле? Хватит действовать мне на нервы, а то я попрошу наставников наложить на вас топик-бан на мою ЛС. Arachnelis (обс.) 18:02, 13 июля 2017 (UTC)[ответить]
  • «Вы … провозгласили в общепринятых терминах некий скрытый смысл» — вы так и не доказали авторитетными источниками, что термин «пробегает» может использоваться в этом значении, а уже говорите о том, что он «общепринятый»? «Вам стал мало играть правилами в основном пространстве» — если вы считаете, что я играю с правилами — подавайте жалобу. --Tucvbif???
    *
    07:52, 14 июля 2017 (UTC)[ответить]
  • "Латинско-русский словообразовательный словарь", Петрова Г.Вс., 2008. ISBN-ов шесть штук (офигеть!), один из них: 978-5-488-01801-3.
varius - пёстрый, разноцветный; блистающий многими созвездиями; пятнистый или пегий; полосатый; разный, различный, разнообразный; ведущийся с переменным успехом; склоняющийся то на одну, то на другую сторону; переменчивый, непостоянный; разнообразный по содержанию;
varietas - различие, разнообразие, многообразие, пестрота; разносторонность, многогранность; разногласие; смена, переменчивость, непостоянство; превратность, разновидность.
varium est - мнения различны
variego [varius + ago] - делать разноцветным, пёстрым; расцвечивать; отливать разными цветами.
variabilis - изменчивый, переменный
convario - испещрять, делать пёстрым
variantia - различие, разнообразие
variatio - изменение, различие
variatus - разнообразный
Arachnelis (обс.) 18:48, 1 августа 2017 (UTC)[ответить]
  • Так что корень "vari" означает "изменчивый", а не "изменяющийся". Чтобы получить это ваше _движение_, вам нужен совсем другой корень:
moveo, movi, motum - двигать, приводить в движение, шевелить, уносить, встряхивать, качать, бить, ударять, затевать, готовить, возбуждать, начинать и др. (полстраницы значений о движении, лень набирать)
mobilis - подвижный, лёгкий, скорый, маневренный
motor - приводящий в движение
momentum - движущая сила, толчок, причина, решающий момент, влиятельное лицо и др.
mutatio - перемена, изменение, перемещение
remote - отдалённо, далеко, на большом расстоянии
  • отсюда английское "movie" - кинофильм (последовательность отдельных кадров). Да, в современном английском уже выделился глагол "vary", но это, так сказать, сломаный телефончик между поколениями. Arachnelis (обс.) 18:37, 4 августа 2017 (UTC)[ответить]
  • Добавлю ещё кое-что субъективное и труднодоказуемое. Те, кто знает английский по словарю, а не на практие, часто не знают, что в словаре смысл даётся с заметной долей условности и может скрывать практические нюансы. Т.е. словаре для русских написано что вот эти слова эквивалентны, но для коренного англичанина разные варианты перевода строго привязаны к определённым случаям допустимого использования. Так вот, не буду утверждать, но по личному опыту скажу, что глагол "vary" обычно используется в связке с "may" - что-то вроде "A is known but B may vary". Когда же они говорят о реальном изменении - мол, нечто было одним, а теперь стало другим - они используют глагол "mutate". Именно поэтому я про императив всегда говорю "мутабельная переменная", чтобы отличать её от "переменных вообще" как абстракций. Возможно, я упустил или просто не встречал некоторые примеры (и тем более будет трудно доказать в отношении конкретного примера, что человек достаточно хорошо владел литературным английским), это значит, что глагол "vary" вполне может означать не тождественное русскому "изменяться", а как раз-таки "быть изменчивым" или "не быть точно известным". Arachnelis (обс.) 06:11, 5 августа 2017 (UTC)[ответить]
  • Не опровергли, а написали длительную простыню с попыткой обосновать связь между утверждением, что в огороде лебеда, и вашим видением, каким должен быть в Киеве дядька. --Tucvbif???
    *
    20:13, 6 августа 2017 (UTC)[ответить]
  • В Lingvo online: This is defined to be F where (B, C) ranges over the compact subspaces of (X, A). (Bredon, Glen / Introduction to compact transformation groups) - Они определяются как F, где (В, С) пробегает пары всех компактных подпространств из (X, А). (Бредон, Г. / Введение в теорию компактных групп преобразований) и ещё пара там же, ЧТД Arachnelis (обс.) 18:25, 1 августа 2017 (UTC)[ответить]
  • Вырванные из контекста случаи перевода слова не подтверждают, что в вашем случае возможно применение слова в этом смылсе. Тем более, что оба случая, описанные по ссылке скорее доказывают именно мою правоту, так как в них — как раз случаи, когда действительно пробегает =— значит, последовательно принимает все значения из множества.--Tucvbif???
    *
    12:09, 6 августа 2017 (UTC)[ответить]
  • Английский - очень контекстно зависимый, это верно. Но вся математика - это контекст сама по себе. В ней не делается различий между "обязательно" и "может быть". Никогда. Arachnelis (обс.) 16:06, 6 августа 2017 (UTC)[ответить]
  • Так речь идёт не о математике, а о языке, точнее о возможности применения термина в значении, в котором никто кроме вас его не употреблял. И пока вы не покажете пару-тройку книг на русском языке от авторитетных авторов, в которых этот термин применяется в том значении, в котором его пытаетесь применить вы, его применение будет нарушать правило ВП:ОРИСС. Но и даже если случится чудо, и вы такие источники найдёте, вам придётся в тексте пояснять, что «принимает значение из множества типов. Такие-то источники называют это пробеганием», как-то так.--Tucvbif???
    *
    20:13, 6 августа 2017 (UTC)[ответить]
  • Я скорее напишу "переменная пробегает, хотя некоторые из людей, психолингвистически изувеченных императивным программированием, в силу присущей им некомпетентности, могут считают этот термин неприменимым". Дальнейший спор с таким упёртым и беспардонно жонглирующим объективностью и субъективностью, как вы, считаю бессмысленным. Посмотрим, как админы итог подведут, когда мы предъявим свои источники, а вы свои. Настоятельно прошу вас более в моём сусеке не писать, ибо далее могу перейти на грубость. Общения с вами в основном пространстве буду попросту избегать, а здесь - не обижайтесь, скажу всё что думаю. Это сусек, я предупредил, так что я не буду виноват - любые ваши выпады могут расцениваться как провокация на нарушение правил. Arachnelis (обс.) 18:17, 7 августа 2017 (UTC)[ответить]
  • И вообще, данную статью следовало бы ещё немного переработать. Например, говоря о том, что переменная типа является абстракцией, вы то ли слишком узко понимаете слово «абстракция» (по сути любой ЯП, и следовательно любой его элемент кроме прямой записи машинных кодов, является абстракцией), то ли не понимаете вообще, что такое «обычная» переменная в языке (даже в самых что на и есть императивных языках переменная никому не обязана находиться в ячейке памяти, она с таким же успехом может быть посчитана во время выполнения программы, или вовсе отброшена, если это не повлияет на конечный результат).--Tucvbif???
    *
    20:13, 6 августа 2017 (UTC)[ответить]
  • Да, но это «в отличие от последнего (параметра), ти́повая переменная является абстракцией» — звучит, будто параметр функции абстракцией не является.--Tucvbif???
    *
    06:43, 8 августа 2017 (UTC)[ответить]
  • Здесь согласен, это надо переписать. У Пирса "заглушка", у Shipman - "place holder". Когда писал, закладывал смысл "пустышка", но постеснялся написать именно так. Ваши предложения? Arachnelis (обс.) 16:39, 8 августа 2017 (UTC)[ответить]
  • Если нет устоявшегося русского термина, лучше вкратце описать суть. Например, «Может рассматриваться как переменная, имеющая тип данных, но которой не может быть присвоено значение».--Tucvbif???
    *
    10:02, 9 августа 2017 (UTC)[ответить]

5Мы решились ввести термин энка как „обобщение“ терминов двойка, тройка и т.д. (вместо выглядящего несколько странно n-ка) по аналогии с получившим широкое распространение английским термином tuple

Как видим, М.Р.Ковтун и С.А.Романенко местами используют свою оригинальную терминологию, поэтому их перевод нельзя использовать как авторитетный источник.--Tucvbif???
*
09:38, 9 августа 2017 (UTC)[ответить]

ЯП: "ML доминирует в формальной верификации"[править код]

  • Be nt all, помнится, несколько месяцев назад кто-то где-то сказал, что фраза "ML доминирует в формальной верификации" в статье ЯП очень сомнительна, а вы возразили что-то вроде "источник, конечно, нужен, но в целом утверждение верно - посмотреть хотя бы на репозиторий убунты", кажется, так. Не могли бы вы указать место этого обсуждения, найти не могу? Arachnelis (обс.) 20:39, 8 июня 2017 (UTC)[ответить]

Region-based memory management[править код]